home *** CD-ROM | disk | FTP | other *** search
/ System Booster / System Booster.iso / SYS / s / AutoSave.wrx < prev    next >
Text File  |  1996-09-26  |  1KB  |  68 lines

  1. /*
  2.  * Autosave Script for WRITE
  3.  *
  4.  * Checks the environment variable "WRITE.Autosave" and takes its value
  5.  * in minutes between two saves. If the variable could not be found, it
  6.  * pops up a requester and asks for the autosave interval.
  7.  *
  8.  * Just run it {@ASYNC} from a write window.
  9.  *
  10.  * written 1994 by Lars Hanke, MGR-Asgard
  11.  *
  12.  */
  13.  
  14. IF ~show('P',"WRITE") then
  15. do
  16.   say "This script is for the WRITE editor. Please start it first."
  17.   exit 10
  18. end
  19.  
  20. ADDRESS 'WRITE'
  21. OPTIONS RESULTS
  22.  
  23. 'VERSIONCHECK 3848 "AutoSave.wrx"'
  24. IF RC~=0 THEN DO
  25.   exit 10
  26. END
  27.  
  28. 'GetVar (_CurrentID)'
  29. ID = RESULT
  30. 'LockWindow' ID
  31.  
  32. IF Open(File,"ENV:WRITE.Autosave") THEN
  33. do
  34.    SAVEDELAY = ReadLn(File);
  35.    call Close(File);
  36. end
  37. else do
  38.    'GetNumber (Minutes of Autosave delay) 5 {@TOMOUSE}'
  39.    'GetVar (_RN)'
  40.    SAVEDELAY = RESULT
  41.  
  42.    if SAVEDELAY <= 0 then SAVEDELAY = 5
  43. end
  44.  
  45. 'LockWindow 0'
  46. AUTOSAVE = SAVEDELAY * 60
  47.  
  48. do forever
  49.   ADDRESS 'COMMAND'
  50.   "WAIT" AUTOSAVE
  51.  
  52.   ADDRESS 'WRITE'
  53.   'LockWindow' ID
  54.   'GetVar (_CurrentID)'
  55.   IF RESULT ~= ID THEN
  56.   do
  57.      'LockWindow 0'
  58.      exit 0
  59.   end
  60.  
  61.   'GetVar (_Changed)'
  62.   IF RESULT ~= 0 then 'Save _FileName'
  63.   'LockWindow 0'
  64. end
  65.  
  66.  
  67.  
  68.